package com.ventas;

import java.util.ArrayList;
import java.util.Calendar;

import org.achartengine.ChartFactory;
import org.achartengine.GraphicalView;

import com.BD.BD_SQLite;
import com.clases.Venta;
import com.reportes.R;
import com.reportes.Reporte_Cancelaciones;
import com.reportes.csmmm;
import com.reportes.login;

import clasesGraficas.VentasN1;

import android.app.ActionBar;
import android.app.Activity;
import android.app.AlertDialog;
import android.app.DatePickerDialog;
import android.app.Dialog;
import android.content.Intent;
import android.content.res.Resources;
import android.graphics.Color;
import android.graphics.PorterDuff;
import android.graphics.PorterDuffColorFilter;
import android.graphics.drawable.Drawable;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuInflater;
import android.view.MenuItem;
import android.view.View;
import android.view.ViewGroup.LayoutParams;
import android.widget.Button;
import android.widget.DatePicker;
import android.widget.LinearLayout;
import android.widget.TextView;
import android.widget.Toast;

public class VentasGenerales extends Activity
{
	/*** DATA BASE ***/
	BD_SQLite db = null;
	
	/*** CONSTASTES ***/
	private static final int PROMOTOR = 1;
	private static final int VENTAS_GENERALES = 2;
	private static final int TIPO_EVENTO = 3;
	private static final int EDAD = 4;
	private static final int CANAL = 5;
	private static final int GENERO = 6;
	private static final int DISTRITO = 7;
	
	/*** INTENTS NIVELES ***/
	private Intent intPromotor = null;
	private Intent intTipoEvento = null;
	private Intent intEdad = null;
	private Intent intCanal = null;
	private Intent intGenero = null;
	private Intent intDistrito = null;

	/*** GRAFICA ***/
	GraphicalView mChartView = null;
	int[] periodo = null;
	String[] periodoS = null;
	double[] ventas = null;
	String tituloGrafica = "";
	LinearLayout layoutGrafica = null;
	private String[] mesesParametro = {"Enero", "Febrero", "Marzo", "Abril", "Mayo", "Junio", "Julio",
		      "Agosto", "Septiembre", "Noviembre", "Diciembre"};

	/*** FALGS o PARAMETROS ***/
	public int flagGenerarReporte = 0; //Si genera el reporte en el onCreate
	public int flagTiempo = 0; // 1=mes && 2=trimenstre && 3=anno
	public int flagLima = 0;
	public int flagProvincia = 0;
	public int flagNivel=0; 
	
	private Button pickDateInicio;
    private int anhoInicio;
    private int mesInicio;
    private int diaInicio;
    
    private Button pickDateFin;
    private int anhoFin;
    private int mesFin;
    private int diaFin;
    
    private TextView fechaInicio;
    private TextView fechaFin;
    private View view;
    
    static final int DATE_DIALOG_Inicial = 0;
    static final int DATE_DIALOG_Final = 1;

	@Override
	protected void onCreate(Bundle savedInstanceState)
	{
		
		super.onCreate(savedInstanceState);
		setContentView(R.layout.ventas);
		incializaFecha();
		
		/*** ACTION BAR ***/
		Resources res = getResources();
		Drawable myImage = res.getDrawable(R.drawable.background2);		
		ActionBar actionBar = this.getActionBar();
		actionBar.setBackgroundDrawable(myImage);
		actionBar.setDisplayUseLogoEnabled(true);
		actionBar.setDisplayShowTitleEnabled(false);
		
		if (flagGenerarReporte == 1){ inicializaFlag(); GenerarReporte(view);}
		else{GenerarReporte(view);}
	}

	public void GenerarReporte(View view)
	{
		int numeroInicial = anhoInicio*10000+mesInicio*100+diaInicio;
		int numeroFinal = anhoFin*10000+mesFin*100+diaFin;
		
		if (( ( flagProvincia == 0 && flagLima==0) || flagTiempo == 0)== false)
		{
			if(numeroFinal>=numeroInicial)
			{
				if (flagNivel==0)
				{
					int flagTipoReporte = 3; //ANOS
					String ubicacion = "";
					if (flagLima == 1 && flagProvincia != 1)
						ubicacion = "Lima";
					if (flagLima != 1 && flagProvincia == 1)
						ubicacion = "Provincia";
					
					db = new BD_SQLite(this);
					
					
					VentasN1 ventasGenerales = new VentasN1();
					ArrayList<Venta> venta = null;
					
					if (flagTiempo == 3) //ANUAL
					{
						venta = db.getVentasAnuales(ubicacion, anhoInicio, anhoFin);
						
						this.periodo = new int[venta.size()];
						this.ventas = new double[venta.size()];
						for (int i = 0; i < venta.size(); i++){
							periodo[i]=venta.get(i).getAnho();
							ventas[i] = venta.get(i).getMonto();
						}
						
						if (anhoFin == anhoInicio)
							this.tituloGrafica = "Ventas Totales de Año " + anhoFin;
						else
							this.tituloGrafica = "Ventas Totales Anuales" + anhoInicio + "-" + anhoFin;
						
						ventasGenerales.ejecutar(periodo, ventas, tituloGrafica, flagTipoReporte);
						db.close();
					}
					else if (flagTiempo == 1) //MENSUAL
					{
						flagTipoReporte = 1; //MES
						String fechaI = ""+anhoInicio;
						String fechaF = ""+anhoFin;
						if ((mesInicio+1)<9)
							fechaI += "0" + (mesInicio + 1);
						else
							fechaI += "" + (mesInicio + 1);
						if ((mesFin+1)<9)
							fechaF += "0" + (mesFin + 1);
						else
							fechaF += "" + (mesFin + 1);
						fechaI += "01";
						fechaF += "31";
						
						venta = db.getVentasMensuales(ubicacion, fechaI, fechaF);
						
						this.periodoS = new String[venta.size()];
						this.ventas = new double[venta.size()];
						for (int i = 0; i < venta.size(); i++){
							periodoS[i]=venta.get(i).getNomMesAnho();
							ventas[i] = venta.get(i).getMonto();
						}
						
						if (anhoFin == anhoInicio)
							this.tituloGrafica = "Ventas de la empresa " + mesesParametro[mesInicio-1] + "-" + mesesParametro[mesFin-1] + " " + anhoFin;
						else
							this.tituloGrafica = "Ventas de la empresa " + mesesParametro[mesInicio-1] + "/" + anhoInicio + " - " + 
																				   mesesParametro[mesFin-1] + "/" + anhoFin;
						
						ventasGenerales.ejecutar(periodoS, ventas, tituloGrafica, flagTipoReporte);
						
						
						db.close();
					}
					
					this.layoutGrafica = (LinearLayout)findViewById(R.id.idpanelgraficoventa);
					this.mChartView = ChartFactory.getLineChartView(this,ventasGenerales.getDataset(), 
								ventasGenerales.getmRenderer());
					layoutGrafica.removeAllViews();
					layoutGrafica.addView(mChartView, new LayoutParams(LayoutParams.FILL_PARENT,
						                  LayoutParams.FILL_PARENT));
						
					Toast.makeText(this, "Se genera el reporte de ventas", Toast.LENGTH_LONG).show();
				}
				if (flagNivel==1)
				{
					this.incializaFlags(PROMOTOR);
					Toast.makeText(this, "Se genera el reporte por promotor", Toast.LENGTH_LONG).show();
				    startActivity(intPromotor);	
				}
				if (flagNivel==2)
				{
					this.incializaFlags(TIPO_EVENTO);
					Toast.makeText(this, "Se genera el reporte por Tipo de Evento", Toast.LENGTH_LONG).show();
				    startActivity(intTipoEvento);
				}
				if (flagNivel==3)
				{
					this.incializaFlags(EDAD);
					Toast.makeText(this, "Se genera el reporte por Edad", Toast.LENGTH_LONG).show();
				    startActivity(intEdad);
				}
				if (flagNivel==4)
				{
					this.incializaFlags(CANAL);
					Toast.makeText(this, "Se genera el reporte por Canal", Toast.LENGTH_LONG).show();
				    startActivity(intCanal);
				}
				if (flagNivel==5)
				{
					this.incializaFlags(GENERO);
					Toast.makeText(this, "Se genera el reporte por Genero", Toast.LENGTH_LONG).show();
				    startActivity(intGenero);
				}
				if (flagNivel==6)
				{
					this.incializaFlags(DISTRITO);
					Toast.makeText(this, "Se genera el reporte por Distrito", Toast.LENGTH_LONG).show();
				    startActivity(intDistrito);
				}
			}
			else
				Toast.makeText(this, "La Fecha Final no puede ser menor a la Fecha Inicial", Toast.LENGTH_LONG).show();
		}
		else
			Toast.makeText(this, "Debe seleccionar el periodo y la ubicacion", Toast.LENGTH_LONG).show();
	}

	public void setColorTiempo(){
		
		Button buttonMensuales = (Button) findViewById(R.id.buttonMensuales);
		Button buttonAnuales = (Button) findViewById(R.id.buttonAnuales);
		Button buttonTrimestrales = (Button) findViewById(R.id.buttonTrimestrales);
	
		if (flagTiempo==1){

			Drawable d1 = buttonMensuales.getBackground();
            PorterDuffColorFilter filter = new PorterDuffColorFilter(Color.BLUE, PorterDuff.Mode.SRC_ATOP);
            d1.setColorFilter(filter);
			
			
			Drawable d2 = buttonAnuales.getBackground();
            findViewById(R.id.buttonAnuales).invalidateDrawable(d2);
            d2.clearColorFilter();
			
            Drawable d3 = buttonTrimestrales.getBackground();
            findViewById(R.id.buttonTrimestrales).invalidateDrawable(d3);
            d3.clearColorFilter();
			
		}
		if (flagTiempo==3){

			Drawable d1 = buttonAnuales.getBackground();
            PorterDuffColorFilter filter = new PorterDuffColorFilter(Color.BLUE, PorterDuff.Mode.SRC_ATOP);
            d1.setColorFilter(filter);

			
			Drawable d2 = buttonMensuales.getBackground();
            findViewById(R.id.buttonMensuales).invalidateDrawable(d2);
            d2.clearColorFilter();
			
            Drawable d3 = buttonTrimestrales.getBackground();
            findViewById(R.id.buttonTrimestrales).invalidateDrawable(d3);
            d3.clearColorFilter();

		
		}
		if (flagTiempo==2) {
			Drawable d1 = buttonTrimestrales.getBackground();
            PorterDuffColorFilter filter = new PorterDuffColorFilter(Color.BLUE, PorterDuff.Mode.SRC_ATOP);
            d1.setColorFilter(filter);

			
			Drawable d2 = buttonMensuales.getBackground();
            findViewById(R.id.buttonMensuales).invalidateDrawable(d2);
            d2.clearColorFilter();
			
            Drawable d3 = buttonAnuales.getBackground();
            findViewById(R.id.buttonAnuales).invalidateDrawable(d3);
            d3.clearColorFilter();
			
		}
	}
	
	public void establecerColorTiempo(View view)
	{
		Button buttonMensuales = (Button) findViewById(R.id.buttonMensuales);
		Button buttonAnuales = (Button) findViewById(R.id.buttonAnuales);
		Button buttonTrimestrales = (Button) findViewById(R.id.buttonTrimestrales);
	
		if (buttonMensuales.isPressed()) flagTiempo=1;
		if (buttonAnuales.isPressed()) flagTiempo=3;
		if (buttonTrimestrales.isPressed()) flagTiempo=2;
		setColorTiempo();
	}
	
	public void establecerColorUbicacion(View view){


		Button buttonLima = (Button) findViewById(R.id.buttonLima);
		Button buttonProvincia = (Button) findViewById(R.id.buttonProvincia);

        
        if (buttonLima.isPressed()){
        	if (flagLima == 0)  flagLima=1; else flagLima=0;
		}
		if (buttonProvincia.isPressed()){
			
			if(flagProvincia==0) flagProvincia=1; else flagProvincia=0;
		}
		
		setColorUbicacion();
        
	}
	
	
	public void setColorUbicacion(){
		

		Button buttonLima = (Button) findViewById(R.id.buttonLima);
		Button buttonProvincia = (Button) findViewById(R.id.buttonProvincia);
		
		
        if (flagLima == 1) {
        		
        	Drawable d1 = buttonLima.getBackground();
            PorterDuffColorFilter filter = new PorterDuffColorFilter(Color.BLUE, PorterDuff.Mode.SRC_ATOP);
            d1.setColorFilter(filter);

    	}
    	else{

    		Drawable d2 = buttonLima.getBackground();
            findViewById(R.id.buttonLima).invalidateDrawable(d2);
            d2.clearColorFilter();
    	}
		if(flagProvincia==1){

			Drawable d1 = buttonProvincia.getBackground();
            PorterDuffColorFilter filter = new PorterDuffColorFilter(Color.BLUE, PorterDuff.Mode.SRC_ATOP);
            d1.setColorFilter(filter);

		}
		else{

            
			Drawable d2 = buttonProvincia.getBackground();
            findViewById(R.id.buttonProvincia).invalidateDrawable(d2);
            d2.clearColorFilter();
		}
	}
	
	
	public void setColorNivel(){
		
		Button buttonCanal = (Button) findViewById(R.id.buttonCanal);
		Button buttonGenero = (Button) findViewById(R.id.buttonGenero);
		Button buttonPromotor = (Button) findViewById(R.id.buttonPromotor);
		Button buttonEdad = (Button) findViewById(R.id.buttonEdad);
		Button buttonTipoEvento = (Button) findViewById(R.id.buttonTipoEvento);
		Button buttonDistrito = (Button) findViewById(R.id.buttonDistrito);
	
		if (flagNivel == 4) {
    		
			Drawable d1 = buttonCanal.getBackground();
            PorterDuffColorFilter filter = new PorterDuffColorFilter(Color.BLUE, PorterDuff.Mode.SRC_ATOP);
            d1.setColorFilter(filter);


    	}
		else{
		
			
			Drawable d1 = buttonCanal.getBackground();
            findViewById(R.id.buttonCanal).invalidateDrawable(d1);
            d1.clearColorFilter();
		}

		if (flagNivel == 5) {
    		
			Drawable d1 = buttonGenero.getBackground();
            PorterDuffColorFilter filter = new PorterDuffColorFilter(Color.BLUE, PorterDuff.Mode.SRC_ATOP);
            d1.setColorFilter(filter);
			

    	}
		else{

			Drawable d1 = buttonGenero.getBackground();
            findViewById(R.id.buttonGenero).invalidateDrawable(d1);
            d1.clearColorFilter();
		}

		if (flagNivel == 1) {
    		
			Drawable d1 = buttonPromotor.getBackground();
            PorterDuffColorFilter filter = new PorterDuffColorFilter(Color.BLUE, PorterDuff.Mode.SRC_ATOP);
            d1.setColorFilter(filter);
    	}
		else{

			Drawable d1 = buttonPromotor.getBackground();
            findViewById(R.id.buttonPromotor).invalidateDrawable(d1);
            d1.clearColorFilter();
		}

		if (flagNivel == 2) {
    		
			Drawable d1 = buttonTipoEvento.getBackground();
            PorterDuffColorFilter filter = new PorterDuffColorFilter(Color.BLUE, PorterDuff.Mode.SRC_ATOP);
            d1.setColorFilter(filter);    	}
		else{

			
			Drawable d1 = buttonTipoEvento.getBackground();
            findViewById(R.id.buttonTipoEvento).invalidateDrawable(d1);
            d1.clearColorFilter();

		}
		
		if (flagNivel == 3) {

			Drawable d1 = buttonEdad.getBackground();
            PorterDuffColorFilter filter = new PorterDuffColorFilter(Color.BLUE, PorterDuff.Mode.SRC_ATOP);
            d1.setColorFilter(filter);
    	}
		else{

			Drawable d1 = buttonEdad.getBackground();
            findViewById(R.id.buttonEdad).invalidateDrawable(d1);
            d1.clearColorFilter();
		}
		
		if (flagNivel == 6) {

			Drawable d1 = buttonDistrito.getBackground();
            PorterDuffColorFilter filter = new PorterDuffColorFilter(Color.BLUE, PorterDuff.Mode.SRC_ATOP);
            d1.setColorFilter(filter);
    	}
		else{

			Drawable d1 = buttonDistrito.getBackground();
            findViewById(R.id.buttonDistrito).invalidateDrawable(d1);
            d1.clearColorFilter();
		}
		
	}
	
	public void establecerSegundoNivel(View view){
		
		Button buttonCanal = (Button) findViewById(R.id.buttonCanal);
		Button buttonGenero = (Button) findViewById(R.id.buttonGenero);
		Button buttonPromotor = (Button) findViewById(R.id.buttonPromotor);
		Button buttonEdad = (Button) findViewById(R.id.buttonEdad);
		Button buttonTipoEvento = (Button) findViewById(R.id.buttonTipoEvento);
		Button buttonDistrito = (Button) findViewById(R.id.buttonDistrito);
	
	
		if (buttonCanal.isPressed()){			
			if (flagNivel == 4) flagNivel=0; else flagNivel=4;
	
		}
		if (buttonGenero.isPressed()){
			
			if (flagNivel == 5) flagNivel=0; else flagNivel=5;
		
		}
		if (buttonPromotor.isPressed()) {
			
			if (flagNivel == 1) flagNivel=0; else flagNivel=1;
			
		}
		
		if (buttonTipoEvento.isPressed()) {
			
			if (flagNivel == 2) flagNivel=0; else flagNivel=2;
			
		}
		
		if (buttonEdad.isPressed()) {
			
			if (flagNivel == 3) flagNivel=0; else flagNivel=3;
		
		}
		
		if (buttonDistrito.isPressed()) {
			
			if (flagNivel == 6) flagNivel=0; else flagNivel=6;
		
		}
		
		setColorNivel();
		
	}
	
	/*** INICIALIZA FECHA CON CALENDARIO ***/
	private void incializaFecha()
	{
		pickDateInicio = (Button) findViewById(R.id.ButtonInicio);
		pickDateInicio.setOnClickListener(new View.OnClickListener() {
		            public void onClick(View v) {
		                showDialog(DATE_DIALOG_Inicial);
		            }
		        });
		        
		final Calendar c = Calendar.getInstance();
		anhoInicio = c.get(Calendar.YEAR);
		mesInicio = c.get(Calendar.MONTH);
		diaInicio = c.get(Calendar.DAY_OF_MONTH);
		
		fechaInicio = (TextView) findViewById(R.id.fechaInicio);
		fechaInicio.setText("Fecha Inicio: " + diaInicio + "/"+ (mesInicio +1) + "/"+ anhoInicio);

		pickDateFin = (Button) findViewById(R.id.ButtonFin);
 
		pickDateFin.setOnClickListener(new View.OnClickListener() {
		            public void onClick(View v) {
		                showDialog(DATE_DIALOG_Final);
		            }
		        });
		        
		anhoFin = c.get(Calendar.YEAR);
		mesFin = c.get(Calendar.MONTH);
		diaFin = c.get(Calendar.DAY_OF_MONTH);
		
		fechaFin = (TextView) findViewById(R.id.fechaFin);
		fechaFin.setText("Fecha Fin: " + diaFin + "/"+ (mesFin +1) + "/"+ anhoFin);
	}
	
	/*** EVENTOS CALENDARIO ***/
	protected Dialog onCreateDialog(int id) {
		   switch (id) {
		   case DATE_DIALOG_Inicial:
		    DatePickerDialog dialogoInicio =new DatePickerDialog(this,
		                    mDateSetListenerInicio, anhoInicio, mesInicio, diaInicio);
		    
		    dialogoInicio.getDatePicker();
			   
		    return dialogoInicio;
		    
		   case DATE_DIALOG_Final:
			    DatePickerDialog dialogoFin =new DatePickerDialog(this,
			                    mDateSetListenerFin, anhoFin, mesFin, diaFin);
			    
			    dialogoFin.getDatePicker();
		   
		    return dialogoFin;
		   }
		   return null;
	}
	
	private DatePickerDialog.OnDateSetListener mDateSetListenerInicio = new DatePickerDialog.OnDateSetListener() {
     public void onDateSet(DatePicker view, int year, int monthOfYear, int dayOfMonth) {
     	anhoInicio = year;
     	mesInicio = monthOfYear;
     	diaInicio = dayOfMonth; 
     	
     	fechaInicio = (TextView) findViewById(R.id.fechaInicio);
 		fechaInicio.setText("Fecha Inicio: " + diaInicio + "/"+ (mesInicio + 1) + "/"+ anhoInicio);
 		
     }
	};
	
	private DatePickerDialog.OnDateSetListener mDateSetListenerFin = new DatePickerDialog.OnDateSetListener() {
     public void onDateSet(DatePicker view, int year, int monthOfYear, int dayOfMonth) {
     	anhoFin = year;
     	mesFin = monthOfYear;
     	diaFin = dayOfMonth;   
     	
     	fechaFin = (TextView) findViewById(R.id.fechaFin);
 		fechaFin.setText("Fecha Fin: " + diaFin + "/"+ (mesFin + 1) + "/"+ anhoFin);
 		
     }
	};
	
	/*** FLAGS ***/
	private void incializaFlags(int intent)
	{
		Intent intVenta = null;
		
		switch(intent)
		{			
			case PROMOTOR:
				intPromotor = new Intent(VentasGenerales.this,Venta_Promotor.class);
				intVenta = intPromotor;
				break;
				
			case VENTAS_GENERALES:
				Intent intVentasGenerales = this.getIntent(); //Solo para actualizar esta misma clase
				intVenta = intVentasGenerales;
				break;
				
			case TIPO_EVENTO:
				intTipoEvento = new Intent(VentasGenerales.this,Venta_TipoEvento.class);
				intVenta = intTipoEvento;
				break;
				
			case EDAD:
				intEdad = new Intent(VentasGenerales.this, Venta_Edad.class);
				intVenta = intEdad;
				break;
				
			case CANAL:
				intCanal = new Intent(VentasGenerales.this, Venta_Edad.class);
				intVenta = intCanal;
				break;
			
			case GENERO:
				intGenero = new Intent(VentasGenerales.this, Venta_Genero.class);
				intVenta = intGenero;
				break;
				
			case DISTRITO:
				intDistrito = new Intent(VentasGenerales.this, Venta_Distrito.class);
				intVenta = intDistrito;
				break;
		}
		
		intVenta.putExtra("flagLima", flagLima);
		intVenta.putExtra("flagProvincia", flagProvincia);
		intVenta.putExtra("flagNivel", flagNivel);
		intVenta.putExtra("flagTiempo", flagTiempo);
		intVenta.putExtra("anhoInicio", anhoInicio);
		intVenta.putExtra("mesInicio", mesInicio);
		intVenta.putExtra("diaInicio", diaInicio);
		intVenta.putExtra("anhoFin", anhoFin);
		intVenta.putExtra("mesFin", mesFin);
		intVenta.putExtra("diaFin", diaFin);
		intVenta.putExtra("flagGenerarReporte", 1);
	}
	
	/*** INICIALIZA FLAG DEL INTENT ***/
	private void inicializaFlag()
	{
		flagGenerarReporte = this.getIntent().getExtras().getInt("flagGenerarReporte");
		flagLima= this.getIntent().getExtras().getInt("flagLima");
		flagProvincia= this.getIntent().getExtras().getInt("flagProvincia");
		flagNivel= this.getIntent().getExtras().getInt("flagNivel");
		flagTiempo= this.getIntent().getExtras().getInt("flagTiempo");
		
		anhoInicio= this.getIntent().getExtras().getInt("anhoInicio");
		mesInicio= this.getIntent().getExtras().getInt("mesInicio");
		diaInicio= this.getIntent().getExtras().getInt("diaInicio");
		
		diaFin= this.getIntent().getExtras().getInt("diaFin");
		mesFin= this.getIntent().getExtras().getInt("mesFin");
		anhoFin= this.getIntent().getExtras().getInt("anhoFin");
	}
	
	/*** ACTION BAR ***/
	@Override
	public boolean onCreateOptionsMenu(Menu menu)
	{
        MenuInflater inflater = getMenuInflater();
        inflater.inflate(R.menu.menuprincipal, menu);
        return true; 
    }
	
	@Override
	public boolean onOptionsItemSelected(MenuItem item) {
	    // Handle item selection
	    switch (item.getItemId()) {
	        case R.id.logout:
	        	Intent logo = new Intent(this,login.class);
	        	startActivity(logo);
	            return true;
	        case R.id.ventas:
	        	Intent ventas = new Intent(this,VentasGenerales.class);
	        	startActivity(ventas);
	            return true;
	        case R.id.consultas:
	        	Intent consultas = new Intent(this,login.class);
	        	startActivity(consultas);
	            return true;
	        case R.id.cancelaciones:
	        	Intent cancelaciones = new Intent(this,Reporte_Cancelaciones.class);
	        	startActivity(cancelaciones);
	            return true;
	        case R.id.evolutivo:
	        	Intent evolutivo = new Intent(this,csmmm.class);
	        	startActivity(evolutivo);
	            return true;
	        default:
	            return super.onOptionsItemSelected(item);
	    }
	}	
}
